<CodeStyleSettings>
  <CSharp>
    <FormatSettings>
      <ALIGN_MULTILINE_ARGUMENT>False</ALIGN_MULTILINE_ARGUMENT>
      <BLANK_LINES_AROUND_SINGLE_LINE_FIELD>1</BLANK_LINES_AROUND_SINGLE_LINE_FIELD>
      <BLANK_LINES_AROUND_SINGLE_LINE_INVOCABLE>1</BLANK_LINES_AROUND_SINGLE_LINE_INVOCABLE>
      <BLANK_LINES_BETWEEN_USING_GROUPS>0</BLANK_LINES_BETWEEN_USING_GROUPS>
      <FORCE_ATTRIBUTE_STYLE>SEPARATE</FORCE_ATTRIBUTE_STYLE>
      <FORCE_FOR_BRACES_STYLE>ALWAYS_ADD</FORCE_FOR_BRACES_STYLE>
      <FORCE_FOREACH_BRACES_STYLE>ALWAYS_ADD</FORCE_FOREACH_BRACES_STYLE>
      <FORCE_IFELSE_BRACES_STYLE>ALWAYS_ADD</FORCE_IFELSE_BRACES_STYLE>
      <FORCE_WHILE_BRACES_STYLE>ALWAYS_ADD</FORCE_WHILE_BRACES_STYLE>
      <INDENT_ANONYMOUS_METHOD_BLOCK>False</INDENT_ANONYMOUS_METHOD_BLOCK>
      <INDENT_EMBRACED_INITIALIZER_BLOCK>False</INDENT_EMBRACED_INITIALIZER_BLOCK>
      <KEEP_BLANK_LINES_IN_CODE>1</KEEP_BLANK_LINES_IN_CODE>
      <KEEP_BLANK_LINES_IN_DECLARATIONS>1</KEEP_BLANK_LINES_IN_DECLARATIONS>
      <KEEP_USER_LINEBREAKS>False</KEEP_USER_LINEBREAKS>
      <MODIFIERS_ORDER IsNull="False">
        <Item>public</Item>
        <Item>protected</Item>
        <Item>internal</Item>
        <Item>private</Item>
        <Item>new</Item>
        <Item>abstract</Item>
        <Item>virtual</Item>
        <Item>override</Item>
        <Item>sealed</Item>
        <Item>static</Item>
        <Item>readonly</Item>
        <Item>extern</Item>
        <Item>unsafe</Item>
        <Item>volatile</Item>
      </MODIFIERS_ORDER>
      <PLACE_CONSTRUCTOR_INITIALIZER_ON_SAME_LINE>False</PLACE_CONSTRUCTOR_INITIALIZER_ON_SAME_LINE>
      <PLACE_FIELD_ATTRIBUTE_ON_SAME_LINE>False</PLACE_FIELD_ATTRIBUTE_ON_SAME_LINE>
      <PLACE_SIMPLE_ACCESSOR_ON_SINGLE_LINE>False</PLACE_SIMPLE_ACCESSOR_ON_SINGLE_LINE>
      <PLACE_TYPE_CONSTRAINTS_ON_SAME_LINE>False</PLACE_TYPE_CONSTRAINTS_ON_SAME_LINE>
      <PLACE_WHILE_ON_NEW_LINE>True</PLACE_WHILE_ON_NEW_LINE>
      <REDUNDANT_THIS_QUALIFIER_STYLE>ALWAYS_USE</REDUNDANT_THIS_QUALIFIER_STYLE>
      <SIMPLE_EMBEDDED_STATEMENT_STYLE>ON_SINGLE_LINE</SIMPLE_EMBEDDED_STATEMENT_STYLE>
      <SPACE_AFTER_TYPECAST_PARENTHESES>False</SPACE_AFTER_TYPECAST_PARENTHESES>
      <SPACE_AROUND_MULTIPLICATIVE_OP>True</SPACE_AROUND_MULTIPLICATIVE_OP>
      <SPACE_BEFORE_SIZEOF_PARENTHESES>False</SPACE_BEFORE_SIZEOF_PARENTHESES>
      <SPACE_BEFORE_TYPEOF_PARENTHESES>False</SPACE_BEFORE_TYPEOF_PARENTHESES>
      <SPACE_WITHIN_SINGLE_LINE_ARRAY_INITIALIZER_BRACES>True</SPACE_WITHIN_SINGLE_LINE_ARRAY_INITIALIZER_BRACES>
      <STICK_COMMENT>False</STICK_COMMENT>
      <WRAP_AFTER_DECLARATION_LPAR>True</WRAP_AFTER_DECLARATION_LPAR>
      <WRAP_AFTER_INVOCATION_LPAR>True</WRAP_AFTER_INVOCATION_LPAR>
      <WRAP_ARGUMENTS_STYLE>CHOP_IF_LONG</WRAP_ARGUMENTS_STYLE>
      <WRAP_BEFORE_FIRST_TYPE_PARAMETER_CONSTRAINT>True</WRAP_BEFORE_FIRST_TYPE_PARAMETER_CONSTRAINT>
      <WRAP_EXTENDS_LIST_STYLE>CHOP_IF_LONG</WRAP_EXTENDS_LIST_STYLE>
      <WRAP_PARAMETERS_STYLE>CHOP_IF_LONG</WRAP_PARAMETERS_STYLE>
    </FormatSettings>
    <UsingsSettings>
      <AddImportsToDeepestScope>True</AddImportsToDeepestScope>
      <QualifiedUsingAtNestedScope>True</QualifiedUsingAtNestedScope>
    </UsingsSettings>
    <Naming2>
      <EventHandlerPatternLong>$object$_On$event$</EventHandlerPatternLong>
      <EventHandlerPatternShort>$event$Handler</EventHandlerPatternShort>
      <ExceptionName IsNull="False">
      </ExceptionName>
      <OverrideDefaultSettings>True</OverrideDefaultSettings>
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="TypesAndNamespaces" />
      <PredefinedRule Inspect="True" Prefix="I" Suffix="" Style="AaBb" ElementKind="Interfaces" />
      <PredefinedRule Inspect="True" Prefix="T" Suffix="" Style="AaBb" ElementKind="TypeParameters" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="MethodPropertyEvent" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Locals" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="LocalConstants" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Parameters" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PublicFields" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Constants" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="StaticReadonly" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="EnumMember" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Other" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="PrivateInstanceFields" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="PrivateStaticFields" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateConstants" />
      <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateStaticReadonly" />
    </Naming2>
    <CustomMemberReorderingPatterns><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<Patterns xmlns="urn:shemas-jetbrains-com:member-reordering-patterns">

    <!-- Do not reorder COM interfaces -->
    <Pattern>
        <Match>
            <And Weight="2000">
                <Kind Is="interface"/>
                <HasAttribute CLRName="System.Runtime.InteropServices.InterfaceTypeAttribute"
                              Inherit="true"/>
            </And>
        </Match>
    </Pattern>

    <!-- Do not reorder P/Invoke structs -->
    <Pattern>
        <Match>
            <And Weight="2000">
                <Or>
                    <Kind Is="struct"/>
                    <Kind Is="class"/>
                </Or>
                <HasAttribute CLRName="System.Runtime.InteropServices.StructLayoutAttribute"
                              Inherit="true"/>
            </And>
        </Match>
    </Pattern>

    <!-- Do not reorder P/Invoke classes (called xxxNativeMethods) -->
    <Pattern>
        <Match>
            <And Weight="2000">
                <Kind Is="class"/>
                <Name Is=".*NativeMethods" />
            </And>
        </Match>
    </Pattern>

    <!-- StyleCop pattern -->
    <Pattern RemoveAllRegions="true">
        <Match>
            <Or Weight="1000" >
                <Kind Is="class" />
                <Kind Is="struct" />
                <Kind Is="interface"/>
            </Or>
        </Match>

        <!-- constants and fields -->
        <Entry>
            <Match>
                <Or>
                    <Kind Is="constant"/>
                    <Kind Is="field"/>
                </Or>
            </Match>
            <Sort>
                <Access Order="public internal protected-internal protected private"/>
                <Kind Order="constant field"/>
                <Readonly/>
                <Static/>
                <Name/>
            </Sort>
        </Entry>

        <!-- constructors -->
        <Entry>
            <Match>
                <Or Weight="200">
                    <Kind Is="constructor"/>
                    <Kind Is="destructor"/>
                </Or>
            </Match>
            <Sort>
                <Static/>
                <Kind Order="constructor destructor"/>
                <Access Order="public internal protected-internal protected private"/>
            </Sort>            
        </Entry>

        <!-- delegates -->
        <Entry>
            <Match>
                <Kind Is="delegate"/>
            </Match>
            <Sort>
                <Access Order="public internal protected-internal protected private" />
                <Static />
                <Name/>
            </Sort>
        </Entry>

        <!-- events -->
        <Entry>
            <Match>
                <Kind Is="event"/>
            </Match>
            <Sort>
                <Access Order="public internal protected-internal protected private" />
                <Static />
                <Name/>
            </Sort>
        </Entry>

        <!-- enum -->
        <Entry>
            <Match>
                <Kind Is="enum"/>
            </Match>
            <Sort>
                <Access Order="public internal protected-internal protected private" />
                <Name/>
            </Sort>
        </Entry>

        <!-- interfaces -->
        <Entry>
            <Match>
                <Kind Is="interface" />
            </Match>
            <Sort>
                <Access Order="public internal protected-internal protected private" />
                <Name/>
            </Sort>
        </Entry>

        <!-- properties -->
        <Entry>
            <Match>
                <Kind Is="property"/>
            </Match>
            <Sort>
                <Access Order="public internal protected-internal protected private"/>
                <Static/>
                <Name/>
            </Sort>
        </Entry>

        <!-- indexers -->
        <Entry>
            <Match>
                <Kind Is="indexer"
                      Weight="300" />
            </Match>
            <Sort>
                <Access Order="public internal protected-internal protected private" />
                <Static/>
                <Name/>
            </Sort>
        </Entry>

        <!-- operator -->
        <Entry>
            <Match>
                <Kind Is="operator"/>
            </Match>
            <Sort>
                <Access Order="public internal protected-internal protected private" />
                <Static/>
                <Name/>
            </Sort>
        </Entry>

        <!-- public methods -->
        <Entry>
            <Match>
                <And>
                    <Kind Is="method"/>
                    <Access Is="public"/>
                </And>
            </Match>
            <Sort>
                <Access Order="public"/>
                <Static/>
                <Name/>
            </Sort>
        </Entry>

        <!-- Implemented Interfaces -->
        <Entry>
            <Match>
                <And Weight="500">
                    <Kind Is="method"/>
                    <ImplementsInterface CLRName=".*"/>
                </And>
            </Match>
            <Sort>
                <ImplementsInterface />
                <Access Order="public internal protected-internal protected private"/>
                <Static/>
                <Name/>
            </Sort>
        </Entry>

        <!-- other methods -->
        <Entry>
            <Match>
                <Kind Is="method"/>
            </Match>
            <Sort>
                <Access Order="public internal protected-internal protected private"/>
                <Static/>
                <Name/>
            </Sort>
        </Entry>

        <!-- Nested structs -->
        <Entry>
            <Match>
                <Kind Is="struct"
                      Weight="600" />
            </Match>
            <Sort>
                <Static />
                <Access Order="public internal protected-internal protected private" />
                <Name/>
            </Sort>
        </Entry>

        <!-- Nested classes -->
        <Entry>
            <Match>
                <Kind Is="class"
                      Weight="700" />
            </Match>
            <Sort>
                <Static />
                <Access Order="public internal protected-internal protected private" />
                <Name/>
            </Sort>
        </Entry>

        <!-- all other members -->
        <Entry/>

    </Pattern>
</Patterns>
]]></CustomMemberReorderingPatterns>
  </CSharp>
  <VB>
    <FormatSettings />
    <ImportsSettings />
    <Naming2>
      <EventHandlerPatternLong>$object$_On$event$</EventHandlerPatternLong>
      <EventHandlerPatternShort>$event$Handler</EventHandlerPatternShort>
    </Naming2>
  </VB>
  <Web>
    <Naming2 />
  </Web>
  <Xaml>
    <Naming2 />
  </Xaml>
  <XML>
    <FormatSettings />
  </XML>
  <GenerateMemberBody />
  <Naming2>
    <EventHandlerPatternLong>$object$_On$event$</EventHandlerPatternLong>
    <EventHandlerPatternShort>$event$Handler</EventHandlerPatternShort>
    <ExceptionName IsNull="False">
    </ExceptionName>
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="aaBb" ElementKind="Locals" />
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="aaBb" ElementKind="Parameters" />
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="AaBb" ElementKind="TypesAndNamespaces" />
    <PredefinedRule Inspect="False" Prefix="I" Suffix="" Style="AaBb" ElementKind="Interfaces" />
    <PredefinedRule Inspect="False" Prefix="T" Suffix="" Style="AaBb" ElementKind="TypeParameters" />
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="AaBb" ElementKind="MethodPropertyEvent" />
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="aaBb" ElementKind="LocalConstants" />
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="AaBb" ElementKind="PublicFields" />
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="AaBb" ElementKind="Constants" />
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="AaBb" ElementKind="StaticReadonly" />
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="AaBb" ElementKind="EnumMember" />
    <PredefinedRule Inspect="False" Prefix="" Suffix="" Style="AaBb" ElementKind="Other" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateConstants" />
    <PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PrivateInstanceFields" />
    <PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PrivateStaticFields" />
    <PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateStaticReadonly" />
  </Naming2>
</CodeStyleSettings>